enum NUCLEOTIDE {NONE=0,C=1,T,G,A};
enum REPETITION {ZERO=0,ONE=1,TWO=2, MANY=999};
#include <vector>
struct OLIGO
{
	std::vector<NUCLEOTIDE> val;
	int number;
	
	float rep_zero;
	float rep_one;
	float rep_two;
	float rep_many;

	int GetLength() { return val.size();};
	
	NUCLEOTIDE operator[](int index)
	{
		return val[index];
	};	

	OLIGO ()
	{
		number = -1;	
	};	


	OLIGO(const OLIGO & ol)
	{
		for(int i=0; i < ol.val.size();i++)
		{
			this->val.push_back(ol.val[i]);
		}
		number = ol.number;

		rep_zero = ol.rep_zero;
		rep_one = ol.rep_one;
		rep_two = ol.rep_two;
		rep_many = ol.rep_many;
	};

	float getRepetitionZero() { return rep_zero;};
	float getRepetitionOne() { return rep_one; };
	float getRepetitionTwo() { return rep_two; };
	float getRepetitionMany() { return rep_many; }; 
};